package escuela.tpfinal.cotizadorTPS.nota;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;

import escuela.tpfinal.cotizadorTPS.cotizacion.CotizacionRepository;

@Controller
@RequestMapping(value="/nota")
public class NotaController {
	
	@Autowired
	private NotaRepository notaRepository;
	@Autowired
	private CotizacionRepository cotizacionRepository;

	@RequestMapping(value="/listar")
	public void listar(ModelMap modelMap, @RequestParam(value="id_cotizacion") Long id_cotizacion, @RequestParam(value="id_cliente") Long id_cliente) {
		List<Nota> notas = notaRepository.findByCotizacion(cotizacionRepository.findById(id_cotizacion));
		System.out.println("hay notas " + notas.size());
		modelMap.addAttribute("listaNotas", notas);
		modelMap.addAttribute("id_cliente", id_cliente);
		modelMap.addAttribute("id_cotizacion", id_cotizacion);
	}
	
	@RequestMapping(value="/crear")
	public NotaForm crear(@RequestParam(value="id_cotizacion") Long id_cotizacion) {
		System.out.println("crear GET");
		NotaForm notaForm = new NotaForm();
		notaForm.setCotizacion(cotizacionRepository.findById(id_cotizacion));
		return notaForm;
	}

	@RequestMapping(value="/crear", method = RequestMethod.POST)
	public String crear(@ModelAttribute NotaForm notaForm, @RequestParam(value="id_cliente") Long id_cliente, @RequestParam(value="id_cotizacion") Long id_cotizacion, @RequestParam(value="texto") String texto) {
		System.out.println("crear POST");
		notaForm.setCotizacion(cotizacionRepository.findById(id_cotizacion));
		notaRepository.save(notaForm.createNota());
		return "redirect:/nota/listar?id_cliente="+id_cliente+"&id_cotizacion="+id_cotizacion;
	}
}
